Various devices and methods have been heretofore suggested and/or utilized to control delivery of therapeutic agents, such as drugs or electrical energy, to a patient. In addition, various drive mechanisms have heretofore been suggested and/or utilized to effect metering of therapeutic agents to a patient, and various on-board dedicated controllers have also been heretofore suggested and/or utilized.
While improvements in dedicated, self-contained controllers have heretofore been made and/or suggested, meaningful further improvements have presented a problem, primarily due to space limitations which have become more acute as the desire and/or need for smaller sized devices has increased while, at the same time, the desirability and/or need for elements providing increasingly sophisticated complexity, which often require additional space, has also increased to the extent that such elements cannot be fitted into this decreasingly available space.
This has resulted in compromises that often have proved to be undesirable, at least in some respects. For example, delivery units capable of delivering therapeutic agents in liquid form and small enough to be worn on the body of a patient must normally now be single-channeled devices, and such devices have normally been limited to delivery of a therapeutic agent at either a controlled rate or a cycled bolus, with the rate being manually adjustable or automatically changed to programmed levels only up to a few times in any twenty-four hour period (with provision being also sometimes made for a brief supplemental bolus of varying size upon demand by the patient or amplitude release on demand of the patient when combined with a profile of a programmed waveform).
Known systems and methods for programming and controlling delivery units have varied, but generally include a manual knob or pushbutton, or buttons on a keyboard, which adjust parameters, and the values of which may be displayed on a panel.
Ambulatory delivery devices capable of delivering therapeutic agents in liquid form have also been heretofore suggested and/or utilized. Within this category are delivery units that are implanted into the body of a patient. Such devices have been typically passive type devices (such as pressurized medication delivery devices) or have been adapted from cardiac pacemaker technology, and flow profile programs for these units have normally been communicated telemetrically to the unit by a programmer. Several such existing devices use the approach of a keyboard remote to the delivery unit, while others use a large, desktop special-purpose computer connected with a telemetry antenna, with such telemetry using pulse-modulated electromagnetic fields.
The programs contained within such dedicated computers are designed with a limited number of pre-programmed waveforms. Because of the use of a limited selection of predetermined profiles, these computers are, in effect, an extension of manual keyboards, and do not give the user either the capability of specifying the profile waveform itself, or of combining freely-defined waveform components. Moreover, these programmers are usually further limited to programming single-chamber devices.
The telemetered programming systems described above use "random access memory" (RAM) units to store the transmitted data in the delivery unit. RAM units, however, have inherent disadvantages, which include the need for sustained power to avoid loss of memory contents, and are designed for ease and speed of writing into memory as well as reading the memory contents which results in relatively high susceptibility to transient electromagnetic noise.
Such programmable devices most often require the use of microprocessors (which depend upon a separate machine program to operate) as well as a program of user-defined parameters. Changing flow profiles in most of these devices entails rewriting the machine program as well as the user program. The machine program is, however, not accessible to reprogramming by the user, and the program must therefore be physically replaced since it is normally contained in a "read only memory" (ROM) unit that is incapable of being reprogrammed (or is reprogrammable only after physical removal and special procedures).
In addition, the relative complexity of the machine programs needed for such general-purpose microprocessors does not easily allow unambiguous proof of all possible logical states of the processor. While such proof is possible in theory, it is extremely difficult to demonstrate in reality, and very expensive to implement. Such proof is therefore limited to relatively simple logic networks and programs, that are far below the complexity of the typically-used microprocessor and machine program.
More recently, dual microprocessors have been used to compensate for the failure potential inherent in single-processor designs, in order to assume only safe failure modes. This does not, however, resolve the problem of ambiguity, and creates a trap for logic states not explicitly contained in a truth table used for comparison.
Since known devices use specially designed programming computers, they tend to be very limited in their capability and the difficulty of writing programs for such computers is very high. In addition, known devices provide only the minimum functions needed to program the delivery unit, and do not provide assistive programs or databases.
The status of known devices intended for table or pole mounting, and used with relatively high flow rates, is somewhat different than for ambulatory devices. Such known large-volume delivery units, however, normally provide only constant flow rate profiles or combinations thereof. Also, the controls for such devices are normally local on-board, and are typically of the keyboard variety which are used in conjunction with various data displays. Also typically, currently used devices have microprocessor controls, with the most advanced systems using dual processors for error detection.
In such devices, a plurality of flow channels have been provided. Typically, however, a primary channel is used to supply a fluid which is usually delivered in large volumes, and a secondary channel is used to supply a smaller volume of a drug containing fluid (see, for example, U.S. Pat. No. 4,391,598 to Thompson). In this system, the fluid flow in the primary channel is interrupted only when a manual order is given which also causes commencement of flow through the secondary channel, and after flow through the secondary channel has occurred at a known flow rate for a time period calculated to be coincident with the emptying of the reservoir associated with the secondary channel, flow is reverted back to the primary channel. In addition, the flow rate in each channel is constant and set by the user with on-board controls.
Another form of multi-channel device has also been suggested in which the flow rate in each channel is a fixed ratio to that of the other channels, depending upon selection of mechanical elements (see, for example, U.S. Pat. No. 3,737,251 to Berman et al).
Another large delivery unit has been suggested which can control up to four flow channels, but utilizes a constant flow rate for each channel that is set using onboard controls.
A single-channel delivery unit has been suggested which has connectors provided for computer access. However, the delivery unit and computer are not designed together as a system. Instead, a user must first provide a computer, and then program the computer for the intended purpose, with communication between the delivery unit and computer being effected by direct wire connection.